package cn.btks.resultintegration.achievements.service;

import cn.btks.commonserver.result.ResultState;
import cn.btks.resultintegration.achievements.pojo.AchievementsFileTemp;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletRequest;
import java.util.List;

/**
 * @Author lijun
 * @Date 2021/2/20 9:11
 */
public interface AchievementsFileTempService {

    /**
     * 根据文件名查询数据库是否存在该文件
     * @param fileName
     * @return
     */
    List<AchievementsFileTemp> findAllByFileName(String fileName);

    /**
     * 压缩某师的文件
     * @param cityId
     * @param request
     * @return
     */
    ResultState zipFileByCityId(Long cityId, HttpServletRequest request);

    /**
     * 压缩某类型的文件
     * @param fileCategory 文件类型ID
     * @param request
     * @return
     */
    ResultState zipFileCategory( Long fileCategory, HttpServletRequest request);

    /**
     * 压缩所有文件（将清单和矢量所有文件压缩成两个压缩包）
     * @return
     */
    ResultState zipAllFile();

    /**
     * 更新佐证材料
     *
     * @param achievementTempId
     * @param multipartFiles
     * @param request
     * @return
     */
    ResultState updateEvidenceFiles(Long achievementTempId, List<MultipartFile> multipartFiles, HttpServletRequest request);

    /**
     * 批量保存佐证材料
     * @param achievementsFileTempList
     * @return
     */
    ResultState saveAllEvidenceFiles(List<AchievementsFileTemp> achievementsFileTempList);
}
